dnl Process this file with autoconf to produce a configure script. -*-m4-*-

dnl Note: the banner comments below are intentionally done in shell syntax.
dnl These help me identify sections of the configure script produced
dnl by autoconf.  Some comments might appear inane and obvious, but again
dnl they are there to delimit sections in the output configure script.

##############################################################################
################ Setup #######################################################
##############################################################################

AC_INIT(src/mkid.c)
AM_CONFIG_HEADER(config.h)
AC_PREREQ(2.13)

AM_INIT_AUTOMAKE([id-utils], [3.2d])
GNU_PACKAGE="GNU $PACKAGE"
AC_DEFINE_UNQUOTED(GNU_PACKAGE, "$GNU_PACKAGE",
  [The concatenation of the strings \`GNU ', and PACKAGE.])

##############################################################################
################ Identify Package ############################################
##############################################################################

AC_DEFINE_UNQUOTED(PACKAGE_VERSION, "GNU $PACKAGE $VERSION",
  [The concatenation of \`GNU', and the macros PACKAGE and VERSION.])

##############################################################################
################ Maintainer Stuff ############################################
##############################################################################

ALL_LINGUAS="de fr"

changequote(,)dnl
case $VERSION in
*[a-z]) README_ALPHA=README-alpha;;
*)      README_ALPHA=;;
esac
changequote([, ])dnl
AC_SUBST(README_ALPHA)

##############################################################################
################ Check for tools #############################################
##############################################################################

AC_PROG_CC
AC_PROG_LN_S
AC_PROG_INSTALL
AC_PROG_MAKE_SET
AC_PROG_CPP
AC_PROG_GCC_TRADITIONAL
AC_PROG_RANLIB
AC_AIX
AC_MINIX
AC_ISC_POSIX

##############################################################################
################ Check for libraries #########################################
##############################################################################

dnl no library checks

##############################################################################
################ Check for header files ######################################
##############################################################################

AC_HEADER_DIRENT
AC_HEADER_STDC
AC_HEADER_STAT
AC_HEADER_SYS_WAIT
AC_CHECK_HEADERS(sys/types.h sys/param.h sys/stat.h sys/ioctl.h)
AC_CHECK_HEADERS(limits.h stddef.h stdlib.h unistd.h string.h fcntl.h)
AC_CHECK_HEADERS(malloc.h termios.h termio.h sgtty.h regex.h memory.h)

##############################################################################
################ Check for typedefs, structs, and compiler params ############
##############################################################################

AM_C_PROTOTYPES
AC_C_CONST
AC_TYPE_SIGNAL
AC_TYPE_OFF_T
AC_TYPE_SIZE_T
AM_TYPE_PTRDIFF_T

##############################################################################
################ Set default compilation flags ###############################
##############################################################################

: ${CFLAGS="-O -g"}
: ${LDFLAGS=-g}
AC_SUBST(CFLAGS)
AC_SUBST(LDFLAGS)

##############################################################################
################ Check for library functions & system calls ##################
##############################################################################

AC_FUNC_ALLOCA
AC_FUNC_VPRINTF
AM_FUNC_OBSTACK
AC_CHECK_FUNCS(getwd getcwd link strerror isascii bcopy bzero memcpy)
AC_REPLACE_FUNCS(strdup strndup strspn strcspn strpbrk strstr strtok)
AC_REPLACE_FUNCS(basename dirname fnmatch error memcpy memset)
AC_CHECK_FUNC(regcomp, , [LIBOBJS="$LIBOBJS regex.o"])

##############################################################################
################ Internationalization ########################################
##############################################################################

AM_GNU_GETTEXT

##############################################################################
################ Find a home for language map ################################
##############################################################################

if test "x$prefix" != xNONE; then
    datadir=$prefix/share
else
    datadir=$ac_default_prefix/share
fi
LANGUAGE_MAP_FILE=$datadir/id-lang.map
AC_DEFINE_UNQUOTED(LANGUAGE_MAP_FILE, "$LANGUAGE_MAP_FILE")
AC_SUBST(LANGUAGE_MAP_FILE)

##############################################################################
################ Find a home for Emacs Lisp code #############################
##############################################################################

AM_PATH_LISPDIR

##############################################################################
################ Generate the configure script ###############################
##############################################################################

# This is necessary so that .o files in LIBOBJS are also built via
# the ANSI2KNR-filtering rules.
LIBOBJS=`echo $LIBOBJS|sed 's/\.o /\$U.o /g;s/\.o$/\$U.o/'`

AC_OUTPUT([Makefile
	   doc/Makefile
	   lib/Makefile
	   libidu/Makefile
	   src/Makefile
	   lisp/Makefile
	   intl/Makefile
	   m4/Makefile
	   po/Makefile.in
	   testsuite/Makefile
	  ],
	[sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile; \
	 test -z "$CONFIG_HEADERS" || echo timestamp >stamp-h])

##############################################################################
################ Done ########################################################
##############################################################################
